Chapter 16: Exercises

選擇題


簡答題

  1. 請說明 Application.Lock 和 Application.Unlock 的功能為何?
  2. 請說明如何使用 Application 物件讓每一個網頁都有獨立計數的功能?
  3. 請說明如何使用 Application 物件讓每一個網頁都有獨立計數,同時能夠顯示計數器啟動的時間?
  4. 請說明 Session.LCID 的功能為何?
  5. 請說明如何使用 Application 與 Session 物件來防止計數或投票資料被灌水?

程式題

請使用本章所學到的 JavaScript/JScript 程式技巧(用於伺服器)來完成下列作業:
  1. (**) 統計用戶端IP: 請寫一個網頁 ipStatistics.asp,可以統計客戶端 IP 連到此網頁的統計資料。請以表格方式列表,第一欄是用戶端 IP,第二欄是連接次數:
    用戶端 IP連接次數
    140.114.76.14823
    210.66.38.8919
    140.113.75.3512
    ......

    (提示:用戶端 IP 可用 Request.ServerVariables("REMOTE_ADDR") 取得即可,換句話說,我們將代理伺服器 IP 也視為用戶端 IP。請用 Application 變數來記錄這些 IP 資料。)

  2. (**) 統計用戶端IP並排序: 寫一個網頁 ipStatisticsOrdered.asp,功能如同上一題,但是必須滿足:
    1. 在列出的表格中,是以連接次數由大而小來進行排序。
    2. 需以實際用戶端IP為準。(換句話說,若抓到代理伺服器IP,就需要更進一步取用實際用戶端的IP。)
  3. (**) 統計代理伺服器IP: 請寫一個網頁 proxyStatistics.asp,可以統計代理伺服器 IP 連到此網頁的統計資料。請以表格方式列表,第一欄是代理伺服器 IP,第二欄是連接次數:
    代理伺服器 IP連接次數
    140.114.76.12825
    210.66.38.9115
    140.113.75.4612
    ......

    (提示:代理伺服器 IP 可用 Request.ServerVariables("HTTP_VIA") 取得即可。請用 Application 變數來記錄這些 IP 資料。)

  4. (**) 統計來源網頁: 請寫一個網頁 refererStatistics.asp,可以統計來源網頁的資料。請以表格方式列表,第一欄是來源網頁的網址,第二欄是連接次數,並請以第二欄來進行由大至小的排列:
    來源網頁連接次數
    http://neural.cs.nthu.edu.tw/jang/template.asp25
    http://neural.cs.nthu.edu.tw/jang/index.asp3
    http://www.cs.nthu.edu.tw/~karen/index.asp2
    ......

    (提示:來源網頁可用 Request.ServerVariables("HTTP_VIA") 取得即可。請用 Application 變數來記錄這些 IP 資料。)

  5. (***) 用戶端和伺服器端的比較: 請列舉出 JavaScript/JScript 在客戶端及伺服器端的不同點,並加以說明,例如:
    1. 語法的不同(例如要印出文字所用的語法)
    2. 支援資料型態的不同(例如在客戶端的 JavaScript/JScript 不支援 Enumerator 物件)
    3. 內建物件的不同
    4. ...
    你可以從各大搜尋網站找到各種相關資料。

JScript 程式設計與應用:用於伺服器端的 ASP 環境